Streaming Platform
JumpingBattle의 다운로드 및 스트리밍 시스템 구조를 정리한 문서입니다.
해당 시스템은 단순 파일 제공 기능이 아니라, 파일 만료 정책과 다운로드 제어, 그리고 운영 과정에서 발생할 수 있는 예외 상황을 고려하여 설계되었습니다.
특히:
- Signed URL 기반 접근 제어
- 만료일자 기반 자동 삭제
- 다운로드 기록 관리
- 스트리밍 환경에서의 접근 제한
등과 같이, 실제 운영 환경에서 발생할 수 있는 문제를 줄이기 위한 방향으로 구조를 구성하였습니다.
주요 기능 구현 목록
- Firebase Storage 기반 파일 다운로드 및 스트리밍
- jpg/mp3 파일 제공 구조
- 다운로드 횟수 기록
- 파일 만료일자 관리
- Firebase Functions 기반 만료 파일 자동 삭제
- Signed URL 기반 다운로드 및 스트리밍 제한
운영 보조 기능
- 만료 여부 / 존재 여부를 구분한 오류 메시지 처리
- 자동 삭제 실패 상황을 고려한 날짜 검수 로직
- 잘못된 접근 요청에 대한 예외 처리
- 파일명 및 접근 흐름 검증